/*
 * s_linklist.h
 *
 *  Created on: 2017年10月18日
 *      Author: simon
 */

#ifndef S_LINKLIST_H_
#define S_LINKLIST_H_
#include <stdlib.h>
#include <string.h>
#include <stdio.h>



typedef int type;
typedef struct s_node
{
	type data;
	struct s_node *pNext;
}S_NODE,*S_PNODE;

S_PNODE s_create_linklist(void);
void s_print_linklist1(S_PNODE PHead);
void s_insert_val_linklist(S_PNODE PHead,int pos,int data);
//链表的长度
int s_length_linklist(S_PNODE PHead);
void s_insert_val_linklist(S_PNODE PHead,int pos,int data);

//选择排序
void s_selectsort_linklist(S_PNODE PHead);
//链表逆序
S_PNODE s_reversed_linklist1(S_PNODE PHead);
S_PNODE s_reversed_linklist2(S_PNODE head);
//查找
S_PNODE s_find_linklist(S_PNODE PHead,int pos);

//插入节点
void s_insert_node_linklist(S_PNODE PHead,S_PNODE node,int pos);
#endif /* S_LINKLIST_H_ */
